function [ fileOK ] = parain(filep)
%UNTITLED2 Summary of this function goes here
%   Detailed explanation goes here

global filex 
global paracheck
global r1 r2 c1 c2
global nspex ishape nthe nphim theu phiu
global gx gy gz dx dy dz spinm axa aya aza niso wgt
global pop arat nnit npro axb ayb azb 
global gxt gyt gzt dxt dyt dzt spinmt axat ayat azat
global popt aratt nnitt nprot axbt aybt azbt nisot wgtt theut phiut
global isaveh ilin iiso
global flx fly flz flxt flyt flzt bwidemax


fid= fopen(filep, 'r');



% Read the first line from the file and verify it is correct.
% If the enty is not '$par$' dislay an error and return.
% The caller needs to check the return parameter against 0.
parcheck = fgetl(fid);
% Set the return value to the result of the string compare
fileOK = strcmp(parcheck, '$par$');
if fileOK == 0 % strings don't match
  fclose(fid);
  errordlg('Not a parameter file. Select a new file.','Invalid file');
  return;
end
filex = strtrim(fgetl(fid));


dat=fscanf(fid ,'%d', 4);
display(dat);
nspex = dat(1);
ishape = dat(2);
    if(nspex<1) nspex=1; 
    elseif(nspex>2) nspex=2; 
    end
nthe = dat(3);
nphim = dat(4);

iangle=0;
if nthe==1 && nphim==1 
    dat=fscanf(fid, '%g', 2)
    iangle=1;
    theu=dat(5);
    phiu=dat(6);
end
    
dat = fscanf(fid, '%g', 6)
gx=dat(1);
gy=dat(2);
gz=dat(3);
dx=dat(4);
dy=dat(5);
dz=dat(6);

dat=fscanf(fid, '%g', 6)
spinm=dat(1);
axa=dat(2);
aya=dat(3);
aza=dat(4);
niso=dat(5);
wgt=dat(6);
if niso ~= 2 
   dat=fscanf(fid, '%g', 5)
   nnit=dat(1);
   npro=dat(2);
   axb=dat(3);
   ayb=dat(4);
   azb=dat(5);
else dat=fscanf(fid, '%g', 2)
    pop=dat(1);
    arat=dat(2);
end

if (nnit>4) nnit=4; end
if ishape==3 || ishape==6 
    dat=fscanf(fid, '%g', 3)
    flx=dat(1);
    fly=dat(2);
    flz=dat(3);
end
if ishape==7 
    dat=fscanf(fid, '%g', 1)
    bwidemax=dat(1);
end
if nspex==2
    if iangle==1 dat=fscanf(fid, '%g', 2)
        theut=dat(1);
        phiut=dat(2);
    end
    dat=fscanf(fid, '%g', 6);
    gxt=dat(1);
    gyt=dat(2);
    gzt=dat(3);
    dxt=dat(4);
    dyt=dat(5);
    dzt=dat(6);
    dat=fscanf(fid, '%g', 6);
    spinmt=dat(1);
    axat=dat(2);
    ayat=dat(3);
    azat=dat(4);
    nisot=dat(5);
    wgtt=dat(6);
    if nisot==2 
        dat=fscan(fid, '%g', 2);
        popt=dat(1);
        aratt=dat(2);
    end
    dat=fscanf(fid, '%g', 5)
        nnitt=dat(1);
        nprot=dat(2);
        axbt=dat(3);
        aybt=dat(4);
        azbt=dat(5);
     if (ishape==3 || ishape==6)
         dat = fscanf(fid, '%g', 3);
         flxt= dat(1);
         flyt= dat(2);
         flzt= dat(3);
     end
end 

dat=fscanf(fid, '%g', 1)
    if(~isempty(dat)) 
        isaveh=dat(1) 
        if(isaveh==1) 
            dat=fscanf(fid, '%g', 2)
            if(size(dat)==2) 
                ilin=dat(1);
                iiso=dat(2);
            elseif(size(dat)==1)
                ilin=dat(1);
            else
            end
        end
    end
    
fclose(fid);
      
return
      
end
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      